The present invention relates to techniques that perform operations selectively on plural data items.
Many conventional techniques perform operations selectively on plural data items. Some examples arise in the field of image processing, in which each data item can relate to a pixel in an image.
Bloomberg et al., U.S. Pat. No. 5,048,109, (Bloomberg et al. '109) describe techniques for detecting highlighted regions of a document. A mask is defined at col. 4 lines 59-64 as an image that contains substantially solid regions of ON pixels corresponding to regions of interest in an original image. As described in relation to 1a, a grayscale scanner can output multiple bits per pixel, and the grayscale scan can be binarized to produce a highlight image (HI). As described in relation to FIG. 1b, a highlight region (HR) mask can be produced from an HI by removing pixels from unhighlighted areas while retaining the highlighted regions in their entirety. The HR mask can be used in a variety of ways. FIGS. 14C and 15C show examples of HR masks. As described in relation to FIG. 14D, the HR mask can be used with an inverse bit map of an HI to produce an highlight mark (HM) image including only those parts of the marks that are covered by the HR.
Bloomberg et al. '109 describe an application to a color highlight copier with a grayscale scanner, beginning at col. 10 line 34.
Bloomberg et al. '109 also describe thresholded reduction techniques. A first stage of specialized hardware in FIG. 16 is an array of bit-slice processors
Other techniques for producing and using masks in image processing are described in Bloomberg, U.S. Pat. Nos. 5,065,437 and Bloomberg et al., 5,131,049.
Mahoney, EP-A 460 970, describes hierarchical data analysis techniques that can be applied to pixel values. FIG. 7 shows a Connection Machine system that performs image processing by simulating a binary image jungle (BIJ). A front end processor can make calls to cause processing units in the Connection Machine to perform arithmetic and logical operations. FIG. 8 illustrates a part of an array of processing units in a Connection Machine, with a processing unit storing a pixel value. The section beginning at page 26 line 15 describes label propagation or labeling, stating that it is possible to select, or single out, all pixels labeled with similar values of a given property in parallel. The section beginning at page 28 line 3 describes selection, stating that selective processing can be achieved by first performing a selection operation to select a set of pixels labeled with similar values, and then performing processing on the selected set of pixels. A pixel can be selected by setting a single bit label "on" in its processing unit. FIG. 24 illustrates general steps in applying a selection criterion using the low and high limits of a range of interest. Page 31, beginning at line 15, describes extensions to handle color and gray shaded images.